// Copyright (c) 2023, json_wang and contributors
// For license information, please see license.txt

frappe.ui.form.on('ServiceOrder', {
	refresh: function (frm) {
		frm.add_custom_button('自定义打印', () => {
			console.log(frm)
			frappe.call('frappe_study.frappestudy.print_service.get_doc_withmeta',
				{ doc_type: frm.doc.doctype, doc_name: frm.doc.name })
				.then(r => {
					console.log(r)
					var printJson = JSON.stringify(r);
					console.log(printJson)
					//window.chrome.webview.postMessage(printJson);
					fetch('http://192.168.0.107:5000/print', {
						method: 'POST',
						headers: {
						  'Content-Type': 'application/json',
						},
						body: printJson
					  })
					  .then(response => response.json())
					  .then(data => console.log('Success:', data))
					  .catch(error => console.error('Error:', error));
				})
		});

		frm.add_custom_button('远程打印', () => {
			console.log(frm)
			frappe.call('frappe_study.frappestudy.remote_print.do_print',
				{ doc_type: frm.doc.doctype, doc_name: frm.doc.name })
				.then(r => {
					console.log(r);					
				})
		});

		console.log(frm.fields_dict);
		if (frm.tableInstance)
		{
			console.log("vtable set records on refresh...")
			frm.trigger("loadProcessCard");
		};
		// const _markup = $(`
        //     <div class="row">
		// 		<div class="col-lg-12 mx-3 my-1 d-flex align-items-stretch">
		// 			<h5 class="pb-2">Products in Shopify</h5> 
		// 		</div>
		// 		<div class="col-lg-12  ">
		// 			<div id="shopify-product-list" class="border-bottom" style="width: 100%;" >
						
		// 			</div> 					
		// 		</div>
		// 		<div class="col-lg-12 mx-3 my-1 d-flex align-items-stretch">
		// 			<div class="btn-group">
        //                         <button type="button" class="btn btn-sm btn-default btn-paginate btn-prev">Prev</button>
        //                         <button type="button" class="btn btn-sm btn-default btn-paginate btn-next">Next</button>
        //         	</div> 
		// 		</div>                              
        //     </div>					
        // `);
		// _markup.appendTo(frm.fields_dict.virtual_section.wrapper[0]);
		// _el = _markup.find("#shopify-product-list")[0]



		// const vtable_container = $(`<div class="form-grid-container" style="margin:20px;"></div>`);
		// vtable_container.appendTo(frm.fields_dict.virtual_section.wrapper[0]);
		// console.log(vtable_container);
		// console.log(vtable_container[0]);
		// 查找 data-fieldname="virtual_section" 的 div
		//const virtualSection = $(frm.wrapper).find('[data-fieldname="virtual_section"]');
		//console.log(virtualSection);
		// 创建表格
		// var demo_data = [
		// 	{
		// 	  "ID": "ORD-001",
		// 	  "Name": "夏季促销活动",
		// 	  "SKUs": "SKU-1001, SKU-1002, SKU-1005",
		// 	  "Status": "Active",
		// 	  "Action": "View"
		// 	},
		// 	{
		// 	  "ID": "ORD-002",
		// 	  "Name": "冬季新品上市",
		// 	  "SKUs": "SKU-2001, SKU-2003",
		// 	  "Status": "Pending",
		// 	  "Action": "Edit"
		// 	},
		// 	{
		// 	  "ID": "ORD-003",
		// 	  "Name": "会员专享礼包",
		// 	  "SKUs": "SKU-3001, SKU-3002, SKU-3003, SKU-3004",
		// 	  "Status": "Completed",
		// 	  "Action": "Archive"
		// 	},
		// 	{
		// 	  "ID": "ORD-004",
		// 	  "Name": "清仓特卖活动",
		// 	  "SKUs": "SKU-4001, SKU-4002",
		// 	  "Status": "Expired",
		// 	  "Action": "Delete"
		// 	},
		// 	{
		// 	  "ID": "ORD-005",
		// 	  "Name": "周年庆促销",
		// 	  "SKUs": "SKU-5001, SKU-5002, SKU-5003, SKU-5004, SKU-5005",
		// 	  "Status": "Draft",
		// 	  "Action": "Preview"
		// 	}
		//   ];
		// frm.shopifyProductTable = new frappe.DataTable(_el, {
		// 	columns: [
		// 		// {
		// 		//     name: 'Image',
		// 		//     align: 'center',
		// 		// },
		// 		{
		// 			name: "ID",
		// 			align: "left",
		// 			editable: false,
		// 			focusable: false,
		// 			width:200
		// 		},
		// 		{
		// 			name: "Name",
		// 			editable: false,
		// 			focusable: false,
		// 			width:200					
		// 		},
		// 		{
		// 			name: "SKUs",
		// 			editable: false,
		// 			focusable: false,
		// 			width:200					
		// 		},
		// 		{
		// 			name: "Status",
		// 			align: "center",
		// 			editable: false,
		// 			focusable: false,
		// 			width:100					
		// 		},
		// 		{
		// 			name: "Action",
		// 			align: "center",
		// 			editable: false,
		// 			focusable: false,
		// 			width:100
		// 		},
		// 	],
		// 	data: demo_data,
		// 	layout: "fixed",
		// });
		// _markup.find(".shopify-datatable-footer").show();		
		// frm.shopifyProductTable.style.setStyle(`.dt-scrollable`, {
		// 	"font-size": "0.75rem",
		// 	"margin-bottom": "1rem",
		// 	"margin-left": "0.35rem",
		// 	"margin-right": "0.35rem",
		// });
		// frm.shopifyProductTable.style.setStyle(`.dt-header`, { "margin-left": "0.35rem", "margin-right": "0.35rem" });
		// frm.shopifyProductTable.style.setStyle(`.dt-cell--header .dt-cell__content`, {
		// 	color: "var(--gray-600)",
		// 	"font-size": "var(--text-sm)",
		// });
		// frm.shopifyProductTable.style.setStyle(`.dt-cell`, { color: "var(--text-color)" });
		// frm.shopifyProductTable.style.setStyle(`.dt-cell--col-1`, { "text-align": "center" });
		// frm.shopifyProductTable.style.setStyle(`.dt-cell--col-2`, { "font-weight": 600 });
		// frm.shopifyProductTable.style.setStyle(`.dt-cell--col-3`, { "font-weight": 600 });	
		
		// 创建自定义容器
        //const container = $(`<div class="custom-table-container" style="margin-top: 20px;"></div>`);
		// 将表格添加到容器
		//table.wrapper.appendTo(container);
		// 将容器添加到表单的某个部分
		//container.appendTo(frm.fields_dict.virtual_section.wrapper);
		
		// layui.use('table', function () {
		// 	var table = layui.table;
		// 	// 已知数据渲染
		// 	var inst = table.render({
		// 		elem: _el,
		// 		cols: [[ //标题栏
		// 			{ field: 'id', title: 'ID', width: 80, sort: true },
		// 			{ field: 'username', title: '用户', width: 120 },
		// 			{ field: 'sign', title: '签名', minWidth: 160 },
		// 			{ field: 'sex', title: '性别', width: 80 },
		// 			{ field: 'city', title: '城市', width: 100 },
		// 			{ field: 'experience', title: '积分', width: 80, sort: true }
		// 		]],
		// 		data: [{ // 赋值已知数据
		// 			"id": "10001",
		// 			"username": "张三1",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "116"
		// 		}, {
		// 			"id": "10002",
		// 			"username": "张三2",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "12",
		// 		}, {
		// 			"id": "10003",
		// 			"username": "张三3",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "65"
		// 		}, {
		// 			"id": "10004",
		// 			"username": "张三4",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "777"
		// 		}, {
		// 			"id": "10005",
		// 			"username": "张三5",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "86"
		// 		}, {
		// 			"id": "10006",
		// 			"username": "张三6",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "12"
		// 		}, {
		// 			"id": "10007",
		// 			"username": "张三7",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "16"
		// 		}, {
		// 			"id": "10008",
		// 			"username": "张三8",
		// 			"sex": "男",
		// 			"city": "浙江杭州",
		// 			"sign": "人生恰似一场修行",
		// 			"experience": "106"
		// 		}],
		// 		//skin: 'line', // 表格风格
		// 		//even: true,
		// 		page: true, // 是否显示分页
		// 		limits: [5, 10, 15],
		// 		limit: 5 // 每页默认显示的数量
		// 	});
		// });

		// const records = [
		// 	{
		// 	  230517143221027: 'CA-2018-156720',
		// 	  230517143221030: 'JM-15580',
		// 	  230517143221032: 'Bagged Rubber Bands',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Fasteners',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Loveland',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '3',
		// 	  230517143221040: '3.024',
		// 	  230517143221041: '-0.605'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-115427',
		// 	  230517143221030: 'EB-13975',
		// 	  230517143221032: 'GBC Binding covers',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Binders',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Fairfield',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '2',
		// 	  230517143221040: '20.72',
		// 	  230517143221041: '6.475'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-115427',
		// 	  230517143221030: 'EB-13975',
		// 	  230517143221032: 'Cardinal Slant-D Ring Binder, Heavy Gauge Vinyl',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Binders',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Fairfield',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '2',
		// 	  230517143221040: '13.904',
		// 	  230517143221041: '4.519'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-143259',
		// 	  230517143221030: 'PO-18865',
		// 	  230517143221032: 'Wilson Jones Legal Size Ring Binders',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Binders',
		// 	  230517143221037: 'East',
		// 	  230517143221024: 'New York City',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '3',
		// 	  230517143221040: '52.776',
		// 	  230517143221041: '19.791'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-143259',
		// 	  230517143221030: 'PO-18865',
		// 	  230517143221032: 'Gear Head AU3700S Headset',
		// 	  230517143221023: 'Technology',
		// 	  230517143221034: 'Phones',
		// 	  230517143221037: 'East',
		// 	  230517143221024: 'New York City',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '7',
		// 	  230517143221040: '90.93',
		// 	  230517143221041: '2.728'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-143259',
		// 	  230517143221030: 'PO-18865',
		// 	  230517143221032: 'Bush Westfield Collection Bookcases, Fully Assembled',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Bookcases',
		// 	  230517143221037: 'East',
		// 	  230517143221024: 'New York City',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '4',
		// 	  230517143221040: '323.136',
		// 	  230517143221041: '12.118'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-126221',
		// 	  230517143221030: 'CC-12430',
		// 	  230517143221032: 'Eureka The Boss Plus 12-Amp Hard Box Upright Vacuum, Red',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Appliances',
		// 	  230517143221037: 'Central',
		// 	  230517143221024: 'Columbus',
		// 	  230517143221029: '2018-12-30',
		// 	  230517143221042: '2',
		// 	  230517143221040: '209.3',
		// 	  230517143221041: '56.511'
		// 	},
		// 	{
		// 	  230517143221027: 'US-2018-158526',
		// 	  230517143221030: 'KH-16360',
		// 	  230517143221032: 'Harbour Creations Steel Folding Chair',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Chairs',
		// 	  230517143221037: 'South',
		// 	  230517143221024: 'Louisville',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '3',
		// 	  230517143221040: '258.75',
		// 	  230517143221041: '77.625'
		// 	},
		// 	{
		// 	  230517143221027: 'US-2018-158526',
		// 	  230517143221030: 'KH-16360',
		// 	  230517143221032: 'Global Leather and Oak Executive Chair, Black',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Chairs',
		// 	  230517143221037: 'South',
		// 	  230517143221024: 'Louisville',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '1',
		// 	  230517143221040: '300.98',
		// 	  230517143221041: '87.284'
		// 	},
		// 	{
		// 	  230517143221027: 'US-2018-158526',
		// 	  230517143221030: 'KH-16360',
		// 	  230517143221032: 'Panasonic KP-350BK Electric Pencil Sharpener with Auto Stop',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Art',
		// 	  230517143221037: 'South',
		// 	  230517143221024: 'Louisville',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '1',
		// 	  230517143221040: '34.58',
		// 	  230517143221041: '10.028'
		// 	},
		// 	{
		// 	  230517143221027: 'US-2018-158526',
		// 	  230517143221030: 'KH-16360',
		// 	  230517143221032: 'GBC ProClick Spines for 32-Hole Punch',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Binders',
		// 	  230517143221037: 'South',
		// 	  230517143221024: 'Louisville',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '1',
		// 	  230517143221040: '12.53',
		// 	  230517143221041: '5.889'
		// 	},
		// 	{
		// 	  230517143221027: 'US-2018-158526',
		// 	  230517143221030: 'KH-16360',
		// 	  230517143221032: 'DMI Arturo Collection Mission-style Design Wood Chair',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Chairs',
		// 	  230517143221037: 'South',
		// 	  230517143221024: 'Louisville',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '8',
		// 	  230517143221040: '1207.84',
		// 	  230517143221041: '314.038'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-130631',
		// 	  230517143221030: 'BS-11755',
		// 	  230517143221032: 'Hand-Finished Solid Wood Document Frame',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Furnishings',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Edmonds',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '2',
		// 	  230517143221040: '68.46',
		// 	  230517143221041: '20.538'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-130631',
		// 	  230517143221030: 'BS-11755',
		// 	  230517143221032: 'Acco Glide Clips',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Fasteners',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Edmonds',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '5',
		// 	  230517143221040: '19.6',
		// 	  230517143221041: '9.604'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-146626',
		// 	  230517143221030: 'BP-11185',
		// 	  230517143221032: 'Nu-Dell Executive Frame',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Furnishings',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Anaheim',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '8',
		// 	  230517143221040: '101.12',
		// 	  230517143221041: '37.414'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-158673',
		// 	  230517143221030: 'KB-16600',
		// 	  230517143221032: 'Xerox 1915',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Paper',
		// 	  230517143221037: 'Central',
		// 	  230517143221024: 'Grand Rapids',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '2',
		// 	  230517143221040: '209.7',
		// 	  230517143221041: '100.656'
		// 	},
		// 	{
		// 	  230517143221027: 'US-2018-102638',
		// 	  230517143221030: 'MC-17845',
		// 	  230517143221032: 'Ideal Clamps',
		// 	  230517143221023: 'Office Supplies',
		// 	  230517143221034: 'Fasteners',
		// 	  230517143221037: 'East',
		// 	  230517143221024: 'New York City',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '3',
		// 	  230517143221040: '6.03',
		// 	  230517143221041: '2.955'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-118885',
		// 	  230517143221030: 'JG-15160',
		// 	  230517143221032: 'Adtran 1202752G1',
		// 	  230517143221023: 'Technology',
		// 	  230517143221034: 'Phones',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Los Angeles',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '3',
		// 	  230517143221040: '302.376',
		// 	  230517143221041: '22.678'
		// 	},
		// 	{
		// 	  230517143221027: 'CA-2018-118885',
		// 	  230517143221030: 'JG-15160',
		// 	  230517143221032: 'Global High-Back Leather Tilter, Burgundy',
		// 	  230517143221023: 'Furniture',
		// 	  230517143221034: 'Chairs',
		// 	  230517143221037: 'West',
		// 	  230517143221024: 'Los Angeles',
		// 	  230517143221029: '2018-12-29',
		// 	  230517143221042: '4',
		// 	  230517143221040: '393.568',
		// 	  230517143221041: '-44.276'
		// 	}
		//   ];
		  
		//   const columns = [
		// 	{
		// 	  field: '230517143221027',
		// 	  title: 'Order ID',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221030',
		// 	  title: 'Customer ID',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221032',
		// 	  title: 'Product Name',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221023',
		// 	  title: 'Category',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221034',
		// 	  title: 'Sub-Category',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221037',
		// 	  title: 'Region',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221024',
		// 	  title: 'City',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221029',
		// 	  title: 'Order Date',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221042',
		// 	  title: 'Quantity',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221040',
		// 	  title: 'Sales',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 	  field: '230517143221041',
		// 	  title: 'Profit',
		// 	  width: 'auto'
		// 	},
		// 	{
		// 		field: 'button',
		// 		title: 'button',
		// 		width: 'auto',
		// 		cellType: 'button',
		// 		text: 'Select',
		// 		style: {
		// 		  color: '#FFF'
		// 		}
		// 	},
		//   ];
		  
		//   const option = {
		// 	records,
		// 	columns,
		// 	widthMode: 'standard'
		//   };

		// const _markup = $(`<div id="shopify-product-list" style="width:100%;height:300px;margin-top:10px;margin-bottom:20px;"></div>`);
		// const targetSection = $(frm.wrapper).find('[data-fieldname="wrapper_process_card"]');
		// //_markup.appendTo(frm.fields_dict.virtual_section.wrapper[0]);
		// _markup.appendTo(targetSection[0]);
		// console.log(frm.fields_dict);
		// _el = _markup[0];
  
		// if (typeof VTable === 'undefined')
		// {
		// 	console.log('VTable is undefined');
		// 	console.log(_el);
		// 	frappe.require('/assets/emes/lib/vtable.min.js').then(() => {
		// 		// 创建 VTable 实例
		// 		frm.tableInstance = new VTable.ListTable(_el, option);
		// 		frm.tableInstance.on(VTable.ListTable.EVENT_TYPE.BUTTON_CLICK, e => {
		// 			console.log(`${VTable.ListTable.EVENT_TYPE.BUTTON_CLICK}, ${e}, ${e.col}, ${e.row}`);
		// 		  });
		// 	});
		// }
		// else
		// {
		// 	// 创建 VTable 实例
		// 	frm.tableInstance = new VTable.ListTable(_el, option);
		// 	frm.tableInstance.on(VTable.ListTable.EVENT_TYPE.BUTTON_CLICK, e => {
		// 		console.log(`${VTable.ListTable.EVENT_TYPE.BUTTON_CLICK}, ${e}, ${e.col}, ${e.row}`);
		// 		var record = frm.tableInstance.getRecordByCell(e.col, e.row);
		// 		console.log(record);
		// 	  });
		// };

		

	},
	onload(frm) {
		//明细行级联选择
		frm.set_query("service_type", "lines", function (doc, cdt, cdn) {
			const row = doc.lines.find(f => f.name === cdn)
			return {
				"filters": {
					"service_type_group": row.service_type_group
				}
			};
		});
		frm.trigger("loadVtable");
		console.log("onload event ...");
	},
	loadVtable: function(frm) {
		console.log("检查是否加载VTable");
		if (typeof VTable === 'undefined')
		{
			console.log('VTable is undefined');			
			frappe.require('/assets/frappe_study/lib/vtable.min.js').then(() => {				
				frm.trigger("createVtable");				
			});
		}
		else
		{
			frm.trigger("createVtable");
		};
	},
	createVtable: function(frm) {
		if (frm.tableInstance)
		{			
			frm.trigger("loadProcessCard",frm);
			return;
		};
		const columns = [
			{
			  field: '230517143221027',
			  title: 'Order ID',
			  width: 'auto'
			},
			{
			  field: '230517143221030',
			  title: 'Customer ID',
			  width: 'auto'
			},
			{
			  field: '230517143221032',
			  title: 'Product Name',
			  width: 'auto'
			},
			{
			  field: '230517143221023',
			  title: 'Category',
			  width: 'auto'
			},
			{
			  field: '230517143221034',
			  title: 'Sub-Category',
			  width: 'auto'
			},
			{
			  field: '230517143221037',
			  title: 'Region',
			  width: 'auto'
			},
			{
			  field: '230517143221024',
			  title: 'City',
			  width: 'auto'
			},
			{
			  field: '230517143221029',
			  title: 'Order Date',
			  width: 'auto'
			},
			{
			  field: '230517143221042',
			  title: 'Quantity',
			  width: 'auto'
			},
			{
			  field: '230517143221040',
			  title: 'Sales',
			  width: 'auto'
			},
			{
			  field: '230517143221041',
			  title: 'Profit',
			  width: 'auto'
			},
			{
				field: 'button',
				title: 'button',
				width: 'auto',
				cellType: 'button',
				text: 'Select',
				style: {
				  color: '#FFF'
				}
			},
		  ];
		  
		const records = [];

		const option = {
		records,
		columns,
		widthMode: 'standard'
		};

		const _markup = $(`<div id="shopify-product-list" style="width:100%;height:300px;margin-top:10px;margin-bottom:20px;"></div>`);
		const targetSection = $(frm.wrapper).find('[data-fieldname="wrapper_process_card"]');
		//_markup.appendTo(frm.fields_dict.virtual_section.wrapper[0]);
		_markup.appendTo(targetSection[0]);
		console.log(frm.fields_dict);
		_el = _markup[0];
		// 创建 VTable 实例
		frm.tableInstance = new VTable.ListTable(_el, option);
		frm.tableInstance.on(VTable.ListTable.EVENT_TYPE.BUTTON_CLICK, e => {
			console.log(`${VTable.ListTable.EVENT_TYPE.BUTTON_CLICK}, ${e}, ${e.col}, ${e.row}`);
		  });
		frm.trigger("loadProcessCard");
	},
	loadProcessCard: function(frm) {
		const records = [
			{
			  230517143221027: 'CA-2018-156720',
			  230517143221030: 'JM-15580',
			  230517143221032: 'Bagged Rubber Bands',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Fasteners',
			  230517143221037: 'West',
			  230517143221024: 'Loveland',
			  230517143221029: '2018-12-30',
			  230517143221042: '3',
			  230517143221040: '3.024',
			  230517143221041: '-0.605'
			},
			{
			  230517143221027: 'CA-2018-115427',
			  230517143221030: 'EB-13975',
			  230517143221032: 'GBC Binding covers',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Binders',
			  230517143221037: 'West',
			  230517143221024: 'Fairfield',
			  230517143221029: '2018-12-30',
			  230517143221042: '2',
			  230517143221040: '20.72',
			  230517143221041: '6.475'
			},
			{
			  230517143221027: 'CA-2018-115427',
			  230517143221030: 'EB-13975',
			  230517143221032: 'Cardinal Slant-D Ring Binder, Heavy Gauge Vinyl',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Binders',
			  230517143221037: 'West',
			  230517143221024: 'Fairfield',
			  230517143221029: '2018-12-30',
			  230517143221042: '2',
			  230517143221040: '13.904',
			  230517143221041: '4.519'
			},
			{
			  230517143221027: 'CA-2018-143259',
			  230517143221030: 'PO-18865',
			  230517143221032: 'Wilson Jones Legal Size Ring Binders',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Binders',
			  230517143221037: 'East',
			  230517143221024: 'New York City',
			  230517143221029: '2018-12-30',
			  230517143221042: '3',
			  230517143221040: '52.776',
			  230517143221041: '19.791'
			},
			{
			  230517143221027: 'CA-2018-143259',
			  230517143221030: 'PO-18865',
			  230517143221032: 'Gear Head AU3700S Headset',
			  230517143221023: 'Technology',
			  230517143221034: 'Phones',
			  230517143221037: 'East',
			  230517143221024: 'New York City',
			  230517143221029: '2018-12-30',
			  230517143221042: '7',
			  230517143221040: '90.93',
			  230517143221041: '2.728'
			},
			{
			  230517143221027: 'CA-2018-143259',
			  230517143221030: 'PO-18865',
			  230517143221032: 'Bush Westfield Collection Bookcases, Fully Assembled',
			  230517143221023: 'Furniture',
			  230517143221034: 'Bookcases',
			  230517143221037: 'East',
			  230517143221024: 'New York City',
			  230517143221029: '2018-12-30',
			  230517143221042: '4',
			  230517143221040: '323.136',
			  230517143221041: '12.118'
			},
			{
			  230517143221027: 'CA-2018-126221',
			  230517143221030: 'CC-12430',
			  230517143221032: 'Eureka The Boss Plus 12-Amp Hard Box Upright Vacuum, Red',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Appliances',
			  230517143221037: 'Central',
			  230517143221024: 'Columbus',
			  230517143221029: '2018-12-30',
			  230517143221042: '2',
			  230517143221040: '209.3',
			  230517143221041: '56.511'
			},
			{
			  230517143221027: 'US-2018-158526',
			  230517143221030: 'KH-16360',
			  230517143221032: 'Harbour Creations Steel Folding Chair',
			  230517143221023: 'Furniture',
			  230517143221034: 'Chairs',
			  230517143221037: 'South',
			  230517143221024: 'Louisville',
			  230517143221029: '2018-12-29',
			  230517143221042: '3',
			  230517143221040: '258.75',
			  230517143221041: '77.625'
			},
			{
			  230517143221027: 'US-2018-158526',
			  230517143221030: 'KH-16360',
			  230517143221032: 'Global Leather and Oak Executive Chair, Black',
			  230517143221023: 'Furniture',
			  230517143221034: 'Chairs',
			  230517143221037: 'South',
			  230517143221024: 'Louisville',
			  230517143221029: '2018-12-29',
			  230517143221042: '1',
			  230517143221040: '300.98',
			  230517143221041: '87.284'
			},
			{
			  230517143221027: 'US-2018-158526',
			  230517143221030: 'KH-16360',
			  230517143221032: 'Panasonic KP-350BK Electric Pencil Sharpener with Auto Stop',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Art',
			  230517143221037: 'South',
			  230517143221024: 'Louisville',
			  230517143221029: '2018-12-29',
			  230517143221042: '1',
			  230517143221040: '34.58',
			  230517143221041: '10.028'
			},
			{
			  230517143221027: 'US-2018-158526',
			  230517143221030: 'KH-16360',
			  230517143221032: 'GBC ProClick Spines for 32-Hole Punch',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Binders',
			  230517143221037: 'South',
			  230517143221024: 'Louisville',
			  230517143221029: '2018-12-29',
			  230517143221042: '1',
			  230517143221040: '12.53',
			  230517143221041: '5.889'
			},
			{
			  230517143221027: 'US-2018-158526',
			  230517143221030: 'KH-16360',
			  230517143221032: 'DMI Arturo Collection Mission-style Design Wood Chair',
			  230517143221023: 'Furniture',
			  230517143221034: 'Chairs',
			  230517143221037: 'South',
			  230517143221024: 'Louisville',
			  230517143221029: '2018-12-29',
			  230517143221042: '8',
			  230517143221040: '1207.84',
			  230517143221041: '314.038'
			},
			{
			  230517143221027: 'CA-2018-130631',
			  230517143221030: 'BS-11755',
			  230517143221032: 'Hand-Finished Solid Wood Document Frame',
			  230517143221023: 'Furniture',
			  230517143221034: 'Furnishings',
			  230517143221037: 'West',
			  230517143221024: 'Edmonds',
			  230517143221029: '2018-12-29',
			  230517143221042: '2',
			  230517143221040: '68.46',
			  230517143221041: '20.538'
			},
			{
			  230517143221027: 'CA-2018-130631',
			  230517143221030: 'BS-11755',
			  230517143221032: 'Acco Glide Clips',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Fasteners',
			  230517143221037: 'West',
			  230517143221024: 'Edmonds',
			  230517143221029: '2018-12-29',
			  230517143221042: '5',
			  230517143221040: '19.6',
			  230517143221041: '9.604'
			},
			{
			  230517143221027: 'CA-2018-146626',
			  230517143221030: 'BP-11185',
			  230517143221032: 'Nu-Dell Executive Frame',
			  230517143221023: 'Furniture',
			  230517143221034: 'Furnishings',
			  230517143221037: 'West',
			  230517143221024: 'Anaheim',
			  230517143221029: '2018-12-29',
			  230517143221042: '8',
			  230517143221040: '101.12',
			  230517143221041: '37.414'
			},
			{
			  230517143221027: 'CA-2018-158673',
			  230517143221030: 'KB-16600',
			  230517143221032: 'Xerox 1915',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Paper',
			  230517143221037: 'Central',
			  230517143221024: 'Grand Rapids',
			  230517143221029: '2018-12-29',
			  230517143221042: '2',
			  230517143221040: '209.7',
			  230517143221041: '100.656'
			},
			{
			  230517143221027: 'US-2018-102638',
			  230517143221030: 'MC-17845',
			  230517143221032: 'Ideal Clamps',
			  230517143221023: 'Office Supplies',
			  230517143221034: 'Fasteners',
			  230517143221037: 'East',
			  230517143221024: 'New York City',
			  230517143221029: '2018-12-29',
			  230517143221042: '3',
			  230517143221040: '6.03',
			  230517143221041: '2.955'
			},
			{
			  230517143221027: 'CA-2018-118885',
			  230517143221030: 'JG-15160',
			  230517143221032: 'Adtran 1202752G1',
			  230517143221023: 'Technology',
			  230517143221034: 'Phones',
			  230517143221037: 'West',
			  230517143221024: 'Los Angeles',
			  230517143221029: '2018-12-29',
			  230517143221042: '3',
			  230517143221040: '302.376',
			  230517143221041: '22.678'
			},
			{
			  230517143221027: 'CA-2018-118885',
			  230517143221030: 'JG-15160',
			  230517143221032: 'Global High-Back Leather Tilter, Burgundy',
			  230517143221023: 'Furniture',
			  230517143221034: 'Chairs',
			  230517143221037: 'West',
			  230517143221024: 'Los Angeles',
			  230517143221029: '2018-12-29',
			  230517143221042: '4',
			  230517143221040: '393.568',
			  230517143221041: '-44.276'
			}
		  ];
		frm.tableInstance.setRecords(records);
	}

});


frappe.ui.form.on('ServiceOrderLine', { // The child table is defined in a DoctType called "Dynamic Link"
	work_time(frm, cdt, cdn) { // "links" is the name of the table field in ToDo, "_add" is the event
		// frm: current ToDo form
		// cdt: child DocType 'Dynamic Link'
		// cdn: child docname (something like 'a6dfk76')
		// cdt and cdn are useful for identifying which row triggered this event
		var total = 0;
		frm.doc.lines.forEach(element => {
			if (element.work_time) {
				total += element.work_time;
			}
		});
		frm.set_value('total_time', total);
		console.log(frm);
	},
	service_type_group(frm, cdt, cdn) {
		//console.log(frm)
		let row = frm.doc.lines.find(f => f.name === cdn)
		row.service_type = null
		frm.refresh_field('lines')
	}
});
